[INFO] fetching crate reproto-repository 0.3.36...
[INFO] checking reproto-repository-0.3.36 against master#158f00a1c5175648af6f6099b075f78d1d014a28 for pr-121251
[INFO] extracting crate reproto-repository 0.3.36 into /workspace/builds/worker-1-tc1/source
[INFO] validating manifest of crates.io crate reproto-repository 0.3.36 on toolchain 158f00a1c5175648af6f6099b075f78d1d014a28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate reproto-repository 0.3.36
[INFO] finished tweaking crates.io crate reproto-repository 0.3.36
[INFO] tweaked toml for crates.io crate reproto-repository 0.3.36 written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded relative-path v0.3.7
[INFO] [stderr]   Downloaded reproto-core v0.3.36
[INFO] [stderr]   Downloaded reproto-semver v0.3.36
[INFO] [stderr]   Downloaded ropey v0.6.3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 24c07f25b82f4cbf8eb8373ab040e7e61204810c2437e5f0b162451a912a696a
[INFO] running `Command { std: "docker" "start" "-a" "24c07f25b82f4cbf8eb8373ab040e7e61204810c2437e5f0b162451a912a696a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "24c07f25b82f4cbf8eb8373ab040e7e61204810c2437e5f0b162451a912a696a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "24c07f25b82f4cbf8eb8373ab040e7e61204810c2437e5f0b162451a912a696a", kill_on_drop: false }`
[INFO] [stdout] 24c07f25b82f4cbf8eb8373ab040e7e61204810c2437e5f0b162451a912a696a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] cb68af6cbef86126a697da775120e057f58d3b062641c6fc9ba1e567fc04c492
[INFO] running `Command { std: "docker" "start" "-a" "cb68af6cbef86126a697da775120e057f58d3b062641c6fc9ba1e567fc04c492", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde v1.0.197
[INFO] [stderr]     Checking unicode-segmentation v1.11.0
[INFO] [stderr]    Compiling ring v0.13.5
[INFO] [stderr]     Checking object v0.32.2
[INFO] [stderr]     Checking untrusted v0.6.2
[INFO] [stderr]     Checking hex v0.2.0
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking num-traits v0.1.43
[INFO] [stderr]     Checking num-bigint v0.1.44
[INFO] [stderr]     Checking ropey v0.6.3
[INFO] [stderr]     Checking backtrace v0.3.69
[INFO] [stderr]     Checking reproto-semver v0.3.36
[INFO] [stderr]     Checking linked-hash-map v0.5.6
[INFO] [stderr]     Checking relative-path v0.3.7
[INFO] [stderr]     Checking serde_json v1.0.114
[INFO] [stderr]     Checking toml v0.4.10
[INFO] [stderr]     Checking reproto-core v0.3.36
[INFO] [stderr]     Checking reproto-repository v0.3.36 (/opt/rustwide/workdir)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/repository.rs:10:16
[INFO] [stdout]    |
[INFO] [stdout] 10 |     index: Box<Index>,
[INFO] [stdout]    |                ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 10 |     index: Box<dyn Index>,
[INFO] [stdout]    |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/repository.rs:11:18
[INFO] [stdout]    |
[INFO] [stdout] 11 |     objects: Box<Objects>,
[INFO] [stdout]    |                  ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     objects: Box<dyn Objects>,
[INFO] [stdout]    |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/resolver/resolvers.rs:5:24
[INFO] [stdout]   |
[INFO] [stdout] 5 |     resolvers: Vec<Box<Resolver>>,
[INFO] [stdout]   |                        ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 5 |     resolvers: Vec<Box<dyn Resolver>>,
[INFO] [stdout]   |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/index/mod.rs:110:51
[INFO] [stdout]     |
[INFO] [stdout] 110 | pub fn index_from_path(path: &Path) -> Result<Box<Index>> {
[INFO] [stdout]     |                                                   ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 110 | pub fn index_from_path(path: &Path) -> Result<Box<dyn Index>> {
[INFO] [stdout]     |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/index/mod.rs:125:86
[INFO] [stdout]     |
[INFO] [stdout] 125 | fn open_git_index(url: &Url, git_repo: git::GitRepo, publishing: bool) -> Result<Box<Index>> {
[INFO] [stdout]     |                                                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 125 | fn open_git_index(url: &Url, git_repo: git::GitRepo, publishing: bool) -> Result<Box<dyn Index>> {
[INFO] [stdout]     |                                                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/index/mod.rs:139:17
[INFO] [stdout]     |
[INFO] [stdout] 139 | ) -> Result<Box<Index>>
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 139 | ) -> Result<Box<dyn Index>>
[INFO] [stdout]     |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/index/mod.rs:166:87
[INFO] [stdout]     |
[INFO] [stdout] 166 | pub fn index_from_url(config: IndexConfig, url: &Url, publishing: bool) -> Result<Box<Index>> {
[INFO] [stdout]     |                                                                                       ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 166 | pub fn index_from_url(config: IndexConfig, url: &Url, publishing: bool) -> Result<Box<dyn Index>> {
[INFO] [stdout]     |                                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/index/mod.rs:65:78
[INFO] [stdout]    |
[INFO] [stdout] 65 |     fn objects_from_index(&self, relative_path: &RelativePath) -> Result<Box<Objects>>;
[INFO] [stdout]    |                                                                              ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 65 |     fn objects_from_index(&self, relative_path: &RelativePath) -> Result<Box<dyn Objects>>;
[INFO] [stdout]    |                                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/index/mod.rs:104:66
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn objects_from_index(&self, _: &RelativePath) -> Result<Box<Objects>> {
[INFO] [stdout]     |                                                                  ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn objects_from_index(&self, _: &RelativePath) -> Result<Box<dyn Objects>> {
[INFO] [stdout]     |                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/index/file_index.rs:217:78
[INFO] [stdout]     |
[INFO] [stdout] 217 |     fn objects_from_index(&self, relative_path: &RelativePath) -> Result<Box<Objects>> {
[INFO] [stdout]     |                                                                              ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 217 |     fn objects_from_index(&self, relative_path: &RelativePath) -> Result<Box<dyn Objects>> {
[INFO] [stdout]     |                                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/repository.rs:10:16
[INFO] [stdout]    |
[INFO] [stdout] 10 |     index: Box<Index>,
[INFO] [stdout]    |                ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 10 |     index: Box<dyn Index>,
[INFO] [stdout]    |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/index/git_index.rs:80:78
[INFO] [stdout]    |
[INFO] [stdout] 80 |     fn objects_from_index(&self, relative_path: &RelativePath) -> Result<Box<Objects>> {
[INFO] [stdout]    |                                                                              ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 80 |     fn objects_from_index(&self, relative_path: &RelativePath) -> Result<Box<dyn Objects>> {
[INFO] [stdout]    |                                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/repository.rs:11:18
[INFO] [stdout]    |
[INFO] [stdout] 11 |     objects: Box<Objects>,
[INFO] [stdout]    |                  ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     objects: Box<dyn Objects>,
[INFO] [stdout]    |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/resolver/resolvers.rs:5:24
[INFO] [stdout]   |
[INFO] [stdout] 5 |     resolvers: Vec<Box<Resolver>>,
[INFO] [stdout]   |                        ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 5 |     resolvers: Vec<Box<dyn Resolver>>,
[INFO] [stdout]   |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/objects/mod.rs:77:17
[INFO] [stdout]    |
[INFO] [stdout] 77 | ) -> Result<Box<Objects>>
[INFO] [stdout]    |                 ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 77 | ) -> Result<Box<dyn Objects>>
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/objects/mod.rs:105:59
[INFO] [stdout]     |
[INFO] [stdout] 105 |     F: Fn(ObjectsConfig, &str, &Url) -> Result<Option<Box<Objects>>>,
[INFO] [stdout]     |                                                           ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 105 |     F: Fn(ObjectsConfig, &str, &Url) -> Result<Option<Box<dyn Objects>>>,
[INFO] [stdout]     |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/objects/mod.rs:103:17
[INFO] [stdout]     |
[INFO] [stdout] 103 | ) -> Result<Box<Objects>>
[INFO] [stdout]     |                 ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 103 | ) -> Result<Box<dyn Objects>>
[INFO] [stdout]     |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/objects/mod.rs:33:64
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn put_object(&mut self, checksum: &Checksum, source: &mut Read, force: bool) -> Result<bool>;
[INFO] [stdout]    |                                                                ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn put_object(&mut self, checksum: &Checksum, source: &mut dyn Read, force: bool) -> Result<bool>;
[INFO] [stdout]    |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/objects/mod.rs:49:52
[INFO] [stdout]    |
[INFO] [stdout] 49 |     fn put_object(&mut self, _: &Checksum, _: &mut Read, _: bool) -> Result<bool> {
[INFO] [stdout]    |                                                    ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 49 |     fn put_object(&mut self, _: &Checksum, _: &mut dyn Read, _: bool) -> Result<bool> {
[INFO] [stdout]    |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/objects/cached_objects.rs:85:64
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn put_object(&mut self, checksum: &Checksum, source: &mut Read, force: bool) -> Result<bool> {
[INFO] [stdout]    |                                                                ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn put_object(&mut self, checksum: &Checksum, source: &mut dyn Read, force: bool) -> Result<bool> {
[INFO] [stdout]    |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/index/mod.rs:110:51
[INFO] [stdout]     |
[INFO] [stdout] 110 | pub fn index_from_path(path: &Path) -> Result<Box<Index>> {
[INFO] [stdout]     |                                                   ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 110 | pub fn index_from_path(path: &Path) -> Result<Box<dyn Index>> {
[INFO] [stdout]     |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/objects/file_objects.rs:33:64
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn put_object(&mut self, checksum: &Checksum, source: &mut Read, force: bool) -> Result<bool> {
[INFO] [stdout]    |                                                                ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn put_object(&mut self, checksum: &Checksum, source: &mut dyn Read, force: bool) -> Result<bool> {
[INFO] [stdout]    |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/objects/git_objects.rs:37:64
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn put_object(&mut self, checksum: &Checksum, reader: &mut Read, force: bool) -> Result<bool> {
[INFO] [stdout]    |                                                                ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn put_object(&mut self, checksum: &Checksum, reader: &mut dyn Read, force: bool) -> Result<bool> {
[INFO] [stdout]    |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/index/mod.rs:125:86
[INFO] [stdout]     |
[INFO] [stdout] 125 | fn open_git_index(url: &Url, git_repo: git::GitRepo, publishing: bool) -> Result<Box<Index>> {
[INFO] [stdout]     |                                                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 125 | fn open_git_index(url: &Url, git_repo: git::GitRepo, publishing: bool) -> Result<Box<dyn Index>> {
[INFO] [stdout]     |                                                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/repository.rs:15:27
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub fn new(index: Box<Index>, objects: Box<Objects>) -> Repository {
[INFO] [stdout]    |                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub fn new(index: Box<dyn Index>, objects: Box<Objects>) -> Repository {
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/index/mod.rs:139:17
[INFO] [stdout]     |
[INFO] [stdout] 139 | ) -> Result<Box<Index>>
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 139 | ) -> Result<Box<dyn Index>>
[INFO] [stdout]     |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/repository.rs:15:48
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub fn new(index: Box<Index>, objects: Box<Objects>) -> Repository {
[INFO] [stdout]    |                                                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub fn new(index: Box<Index>, objects: Box<dyn Objects>) -> Repository {
[INFO] [stdout]    |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/index/mod.rs:166:87
[INFO] [stdout]     |
[INFO] [stdout] 166 | pub fn index_from_url(config: IndexConfig, url: &Url, publishing: bool) -> Result<Box<Index>> {
[INFO] [stdout]     |                                                                                       ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 166 | pub fn index_from_url(config: IndexConfig, url: &Url, publishing: bool) -> Result<Box<dyn Index>> {
[INFO] [stdout]     |                                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/index/mod.rs:65:78
[INFO] [stdout]    |
[INFO] [stdout] 65 |     fn objects_from_index(&self, relative_path: &RelativePath) -> Result<Box<Objects>>;
[INFO] [stdout]    |                                                                              ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 65 |     fn objects_from_index(&self, relative_path: &RelativePath) -> Result<Box<dyn Objects>>;
[INFO] [stdout]    |                                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/resolver/resolvers.rs:9:35
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub fn new(resolvers: Vec<Box<Resolver>>) -> Resolvers {
[INFO] [stdout]   |                                   ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub fn new(resolvers: Vec<Box<dyn Resolver>>) -> Resolvers {
[INFO] [stdout]   |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/index/mod.rs:104:66
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn objects_from_index(&self, _: &RelativePath) -> Result<Box<Objects>> {
[INFO] [stdout]     |                                                                  ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn objects_from_index(&self, _: &RelativePath) -> Result<Box<dyn Objects>> {
[INFO] [stdout]     |                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/index/file_index.rs:217:78
[INFO] [stdout]     |
[INFO] [stdout] 217 |     fn objects_from_index(&self, relative_path: &RelativePath) -> Result<Box<Objects>> {
[INFO] [stdout]     |                                                                              ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 217 |     fn objects_from_index(&self, relative_path: &RelativePath) -> Result<Box<dyn Objects>> {
[INFO] [stdout]     |                                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/index/git_index.rs:80:78
[INFO] [stdout]    |
[INFO] [stdout] 80 |     fn objects_from_index(&self, relative_path: &RelativePath) -> Result<Box<Objects>> {
[INFO] [stdout]    |                                                                              ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 80 |     fn objects_from_index(&self, relative_path: &RelativePath) -> Result<Box<dyn Objects>> {
[INFO] [stdout]    |                                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/objects/mod.rs:77:17
[INFO] [stdout]    |
[INFO] [stdout] 77 | ) -> Result<Box<Objects>>
[INFO] [stdout]    |                 ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 77 | ) -> Result<Box<dyn Objects>>
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/objects/mod.rs:105:59
[INFO] [stdout]     |
[INFO] [stdout] 105 |     F: Fn(ObjectsConfig, &str, &Url) -> Result<Option<Box<Objects>>>,
[INFO] [stdout]     |                                                           ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 105 |     F: Fn(ObjectsConfig, &str, &Url) -> Result<Option<Box<dyn Objects>>>,
[INFO] [stdout]     |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/objects/mod.rs:103:17
[INFO] [stdout]     |
[INFO] [stdout] 103 | ) -> Result<Box<Objects>>
[INFO] [stdout]     |                 ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 103 | ) -> Result<Box<dyn Objects>>
[INFO] [stdout]     |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/objects/mod.rs:33:64
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn put_object(&mut self, checksum: &Checksum, source: &mut Read, force: bool) -> Result<bool>;
[INFO] [stdout]    |                                                                ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn put_object(&mut self, checksum: &Checksum, source: &mut dyn Read, force: bool) -> Result<bool>;
[INFO] [stdout]    |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/objects/mod.rs:49:52
[INFO] [stdout]    |
[INFO] [stdout] 49 |     fn put_object(&mut self, _: &Checksum, _: &mut Read, _: bool) -> Result<bool> {
[INFO] [stdout]    |                                                    ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 49 |     fn put_object(&mut self, _: &Checksum, _: &mut dyn Read, _: bool) -> Result<bool> {
[INFO] [stdout]    |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/objects/cached_objects.rs:85:64
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn put_object(&mut self, checksum: &Checksum, source: &mut Read, force: bool) -> Result<bool> {
[INFO] [stdout]    |                                                                ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn put_object(&mut self, checksum: &Checksum, source: &mut dyn Read, force: bool) -> Result<bool> {
[INFO] [stdout]    |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/objects/file_objects.rs:33:64
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn put_object(&mut self, checksum: &Checksum, source: &mut Read, force: bool) -> Result<bool> {
[INFO] [stdout]    |                                                                ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn put_object(&mut self, checksum: &Checksum, source: &mut dyn Read, force: bool) -> Result<bool> {
[INFO] [stdout]    |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/objects/git_objects.rs:37:64
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn put_object(&mut self, checksum: &Checksum, reader: &mut Read, force: bool) -> Result<bool> {
[INFO] [stdout]    |                                                                ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn put_object(&mut self, checksum: &Checksum, reader: &mut dyn Read, force: bool) -> Result<bool> {
[INFO] [stdout]    |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/repository.rs:15:27
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub fn new(index: Box<Index>, objects: Box<Objects>) -> Repository {
[INFO] [stdout]    |                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub fn new(index: Box<dyn Index>, objects: Box<Objects>) -> Repository {
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/repository.rs:15:48
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub fn new(index: Box<Index>, objects: Box<Objects>) -> Repository {
[INFO] [stdout]    |                                                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub fn new(index: Box<Index>, objects: Box<dyn Objects>) -> Repository {
[INFO] [stdout]    |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/resolver/resolvers.rs:9:35
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub fn new(resolvers: Vec<Box<Resolver>>) -> Resolvers {
[INFO] [stdout]   |                                   ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub fn new(resolvers: Vec<Box<dyn Resolver>>) -> Resolvers {
[INFO] [stdout]   |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/objects/mod.rs:114:87
[INFO] [stdout]     |
[INFO] [stdout] 114 |         "file" => objects_from_path(Path::new(url.path())).map(|o| Box::new(o) as Box<Objects>),
[INFO] [stdout]     |                                                                                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 114 |         "file" => objects_from_path(Path::new(url.path())).map(|o| Box::new(o) as Box<dyn Objects>),
[INFO] [stdout]     |                                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/objects/mod.rs:114:87
[INFO] [stdout]     |
[INFO] [stdout] 114 |         "file" => objects_from_path(Path::new(url.path())).map(|o| Box::new(o) as Box<Objects>),
[INFO] [stdout]     |                                                                                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 114 |         "file" => objects_from_path(Path::new(url.path())).map(|o| Box::new(o) as Box<dyn Objects>),
[INFO] [stdout]     |                                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 23 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 23 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.13s
[INFO] running `Command { std: "docker" "inspect" "cb68af6cbef86126a697da775120e057f58d3b062641c6fc9ba1e567fc04c492", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cb68af6cbef86126a697da775120e057f58d3b062641c6fc9ba1e567fc04c492", kill_on_drop: false }`
[INFO] [stdout] cb68af6cbef86126a697da775120e057f58d3b062641c6fc9ba1e567fc04c492
[INFO] checking reproto-repository-0.3.36 against try#b4fc5dbf0bc33be331f9d893db5b3a794f29724a+rustflags=-Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds for pr-121251
[INFO] extracting crate reproto-repository 0.3.36 into /workspace/builds/worker-1-tc2/source
[INFO] validating manifest of crates.io crate reproto-repository 0.3.36 on toolchain b4fc5dbf0bc33be331f9d893db5b3a794f29724a
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate reproto-repository 0.3.36
[INFO] finished tweaking crates.io crate reproto-repository 0.3.36
[INFO] tweaked toml for crates.io crate reproto-repository 0.3.36 written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 1153ef44c8dbc62877c9ebf007a40319e99f2cab42c848e79d957ce412f6e944
[INFO] running `Command { std: "docker" "start" "-a" "1153ef44c8dbc62877c9ebf007a40319e99f2cab42c848e79d957ce412f6e944", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1153ef44c8dbc62877c9ebf007a40319e99f2cab42c848e79d957ce412f6e944", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1153ef44c8dbc62877c9ebf007a40319e99f2cab42c848e79d957ce412f6e944", kill_on_drop: false }`
[INFO] [stdout] 1153ef44c8dbc62877c9ebf007a40319e99f2cab42c848e79d957ce412f6e944
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5af37761529b4c5d409f2031ce88ec7e63cd3e34d06245a18f08f4de39365118
[INFO] running `Command { std: "docker" "start" "-a" "5af37761529b4c5d409f2031ce88ec7e63cd3e34d06245a18f08f4de39365118", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde v1.0.197
[INFO] [stderr]    Compiling ring v0.13.5
[INFO] [stderr]     Checking object v0.32.2
[INFO] [stderr]     Checking unicode-segmentation v1.11.0
[INFO] [stderr]     Checking untrusted v0.6.2
[INFO] [stderr]     Checking hex v0.2.0
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking num-traits v0.1.43
[INFO] [stderr]     Checking num-bigint v0.1.44
[INFO] [stderr]     Checking ropey v0.6.3
[INFO] [stderr]     Checking relative-path v0.3.7
[INFO] [stderr]     Checking reproto-semver v0.3.36
[INFO] [stderr]     Checking linked-hash-map v0.5.6
[INFO] [stderr]     Checking serde_json v1.0.114
[INFO] [stderr]     Checking toml v0.4.10
[INFO] [stderr]     Checking backtrace v0.3.69
[INFO] [stderr]     Checking reproto-core v0.3.36
[INFO] [stderr]     Checking reproto-repository v0.3.36 (/opt/rustwide/workdir)
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/objects/cached_objects.rs:30:57
[INFO] [stdout]    |
[INFO] [stdout] 30 |             .join(format!("{}", HexSlice::new(&checksum[0..1])));
[INFO] [stdout]    |                                                         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/objects/cached_objects.rs:31:68
[INFO] [stdout]    |
[INFO] [stdout] 31 |         let path = path.join(format!("{}", HexSlice::new(&checksum[1..2])));
[INFO] [stdout]    |                                                                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/objects/file_objects.rs:26:57
[INFO] [stdout]    |
[INFO] [stdout] 26 |             .join(format!("{}", HexSlice::new(&checksum[0..1])));
[INFO] [stdout]    |                                                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/objects/file_objects.rs:27:68
[INFO] [stdout]    |
[INFO] [stdout] 27 |         let path = path.join(format!("{}", HexSlice::new(&checksum[1..2])));
[INFO] [stdout]    |                                                                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/sha256.rs:17:31
[INFO] [stdout]    |
[INFO] [stdout] 17 |         hasher.update(&buffer[0..len]);
[INFO] [stdout]    |                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/objects/cached_objects.rs:30:57
[INFO] [stdout]    |
[INFO] [stdout] 30 |             .join(format!("{}", HexSlice::new(&checksum[0..1])));
[INFO] [stdout]    |                                                         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/objects/cached_objects.rs:31:68
[INFO] [stdout]    |
[INFO] [stdout] 31 |         let path = path.join(format!("{}", HexSlice::new(&checksum[1..2])));
[INFO] [stdout]    |                                                                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/objects/file_objects.rs:26:57
[INFO] [stdout]    |
[INFO] [stdout] 26 |             .join(format!("{}", HexSlice::new(&checksum[0..1])));
[INFO] [stdout]    |                                                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/objects/file_objects.rs:27:68
[INFO] [stdout]    |
[INFO] [stdout] 27 |         let path = path.join(format!("{}", HexSlice::new(&checksum[1..2])));
[INFO] [stdout]    |                                                                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> src/sha256.rs:17:31
[INFO] [stdout]    |
[INFO] [stdout] 17 |         hasher.update(&buffer[0..len]);
[INFO] [stdout]    |                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/repository.rs:10:16
[INFO] [stdout]    |
[INFO] [stdout] 10 |     index: Box<Index>,
[INFO] [stdout]    |                ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 10 |     index: Box<dyn Index>,
[INFO] [stdout]    |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/repository.rs:11:18
[INFO] [stdout]    |
[INFO] [stdout] 11 |     objects: Box<Objects>,
[INFO] [stdout]    |                  ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     objects: Box<dyn Objects>,
[INFO] [stdout]    |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/resolver/resolvers.rs:5:24
[INFO] [stdout]   |
[INFO] [stdout] 5 |     resolvers: Vec<Box<Resolver>>,
[INFO] [stdout]   |                        ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 5 |     resolvers: Vec<Box<dyn Resolver>>,
[INFO] [stdout]   |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/repository.rs:10:16
[INFO] [stdout]    |
[INFO] [stdout] 10 |     index: Box<Index>,
[INFO] [stdout]    |                ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 10 |     index: Box<dyn Index>,
[INFO] [stdout]    |                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/repository.rs:11:18
[INFO] [stdout]    |
[INFO] [stdout] 11 |     objects: Box<Objects>,
[INFO] [stdout]    |                  ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     objects: Box<dyn Objects>,
[INFO] [stdout]    |                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/index/mod.rs:110:51
[INFO] [stdout]     |
[INFO] [stdout] 110 | pub fn index_from_path(path: &Path) -> Result<Box<Index>> {
[INFO] [stdout]     |                                                   ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 110 | pub fn index_from_path(path: &Path) -> Result<Box<dyn Index>> {
[INFO] [stdout]     |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/resolver/resolvers.rs:5:24
[INFO] [stdout]   |
[INFO] [stdout] 5 |     resolvers: Vec<Box<Resolver>>,
[INFO] [stdout]   |                        ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 5 |     resolvers: Vec<Box<dyn Resolver>>,
[INFO] [stdout]   |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/index/mod.rs:125:86
[INFO] [stdout]     |
[INFO] [stdout] 125 | fn open_git_index(url: &Url, git_repo: git::GitRepo, publishing: bool) -> Result<Box<Index>> {
[INFO] [stdout]     |                                                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 125 | fn open_git_index(url: &Url, git_repo: git::GitRepo, publishing: bool) -> Result<Box<dyn Index>> {
[INFO] [stdout]     |                                                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/index/mod.rs:139:17
[INFO] [stdout]     |
[INFO] [stdout] 139 | ) -> Result<Box<Index>>
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 139 | ) -> Result<Box<dyn Index>>
[INFO] [stdout]     |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/index/mod.rs:166:87
[INFO] [stdout]     |
[INFO] [stdout] 166 | pub fn index_from_url(config: IndexConfig, url: &Url, publishing: bool) -> Result<Box<Index>> {
[INFO] [stdout]     |                                                                                       ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 166 | pub fn index_from_url(config: IndexConfig, url: &Url, publishing: bool) -> Result<Box<dyn Index>> {
[INFO] [stdout]     |                                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/index/mod.rs:65:78
[INFO] [stdout]    |
[INFO] [stdout] 65 |     fn objects_from_index(&self, relative_path: &RelativePath) -> Result<Box<Objects>>;
[INFO] [stdout]    |                                                                              ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 65 |     fn objects_from_index(&self, relative_path: &RelativePath) -> Result<Box<dyn Objects>>;
[INFO] [stdout]    |                                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/index/mod.rs:104:66
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn objects_from_index(&self, _: &RelativePath) -> Result<Box<Objects>> {
[INFO] [stdout]     |                                                                  ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn objects_from_index(&self, _: &RelativePath) -> Result<Box<dyn Objects>> {
[INFO] [stdout]     |                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/index/file_index.rs:217:78
[INFO] [stdout]     |
[INFO] [stdout] 217 |     fn objects_from_index(&self, relative_path: &RelativePath) -> Result<Box<Objects>> {
[INFO] [stdout]     |                                                                              ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 217 |     fn objects_from_index(&self, relative_path: &RelativePath) -> Result<Box<dyn Objects>> {
[INFO] [stdout]     |                                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/index/git_index.rs:80:78
[INFO] [stdout]    |
[INFO] [stdout] 80 |     fn objects_from_index(&self, relative_path: &RelativePath) -> Result<Box<Objects>> {
[INFO] [stdout]    |                                                                              ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 80 |     fn objects_from_index(&self, relative_path: &RelativePath) -> Result<Box<dyn Objects>> {
[INFO] [stdout]    |                                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/index/mod.rs:110:51
[INFO] [stdout]     |
[INFO] [stdout] 110 | pub fn index_from_path(path: &Path) -> Result<Box<Index>> {
[INFO] [stdout]     |                                                   ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 110 | pub fn index_from_path(path: &Path) -> Result<Box<dyn Index>> {
[INFO] [stdout]     |                                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/index/mod.rs:125:86
[INFO] [stdout]     |
[INFO] [stdout] 125 | fn open_git_index(url: &Url, git_repo: git::GitRepo, publishing: bool) -> Result<Box<Index>> {
[INFO] [stdout]     |                                                                                      ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 125 | fn open_git_index(url: &Url, git_repo: git::GitRepo, publishing: bool) -> Result<Box<dyn Index>> {
[INFO] [stdout]     |                                                                                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/objects/mod.rs:77:17
[INFO] [stdout]    |
[INFO] [stdout] 77 | ) -> Result<Box<Objects>>
[INFO] [stdout]    |                 ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 77 | ) -> Result<Box<dyn Objects>>
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/index/mod.rs:139:17
[INFO] [stdout]     |
[INFO] [stdout] 139 | ) -> Result<Box<Index>>
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 139 | ) -> Result<Box<dyn Index>>
[INFO] [stdout]     |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/index/mod.rs:166:87
[INFO] [stdout]     |
[INFO] [stdout] 166 | pub fn index_from_url(config: IndexConfig, url: &Url, publishing: bool) -> Result<Box<Index>> {
[INFO] [stdout]     |                                                                                       ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 166 | pub fn index_from_url(config: IndexConfig, url: &Url, publishing: bool) -> Result<Box<dyn Index>> {
[INFO] [stdout]     |                                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/objects/mod.rs:105:59
[INFO] [stdout]     |
[INFO] [stdout] 105 |     F: Fn(ObjectsConfig, &str, &Url) -> Result<Option<Box<Objects>>>,
[INFO] [stdout]     |                                                           ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 105 |     F: Fn(ObjectsConfig, &str, &Url) -> Result<Option<Box<dyn Objects>>>,
[INFO] [stdout]     |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/index/mod.rs:65:78
[INFO] [stdout]    |
[INFO] [stdout] 65 |     fn objects_from_index(&self, relative_path: &RelativePath) -> Result<Box<Objects>>;
[INFO] [stdout]    |                                                                              ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 65 |     fn objects_from_index(&self, relative_path: &RelativePath) -> Result<Box<dyn Objects>>;
[INFO] [stdout]    |                                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/objects/mod.rs:103:17
[INFO] [stdout]     |
[INFO] [stdout] 103 | ) -> Result<Box<Objects>>
[INFO] [stdout]     |                 ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 103 | ) -> Result<Box<dyn Objects>>
[INFO] [stdout]     |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/objects/mod.rs:33:64
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn put_object(&mut self, checksum: &Checksum, source: &mut Read, force: bool) -> Result<bool>;
[INFO] [stdout]    |                                                                ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn put_object(&mut self, checksum: &Checksum, source: &mut dyn Read, force: bool) -> Result<bool>;
[INFO] [stdout]    |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/objects/mod.rs:49:52
[INFO] [stdout]    |
[INFO] [stdout] 49 |     fn put_object(&mut self, _: &Checksum, _: &mut Read, _: bool) -> Result<bool> {
[INFO] [stdout]    |                                                    ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 49 |     fn put_object(&mut self, _: &Checksum, _: &mut dyn Read, _: bool) -> Result<bool> {
[INFO] [stdout]    |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/objects/cached_objects.rs:85:64
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn put_object(&mut self, checksum: &Checksum, source: &mut Read, force: bool) -> Result<bool> {
[INFO] [stdout]    |                                                                ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn put_object(&mut self, checksum: &Checksum, source: &mut dyn Read, force: bool) -> Result<bool> {
[INFO] [stdout]    |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/index/mod.rs:104:66
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn objects_from_index(&self, _: &RelativePath) -> Result<Box<Objects>> {
[INFO] [stdout]     |                                                                  ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn objects_from_index(&self, _: &RelativePath) -> Result<Box<dyn Objects>> {
[INFO] [stdout]     |                                                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/objects/file_objects.rs:33:64
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn put_object(&mut self, checksum: &Checksum, source: &mut Read, force: bool) -> Result<bool> {
[INFO] [stdout]    |                                                                ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn put_object(&mut self, checksum: &Checksum, source: &mut dyn Read, force: bool) -> Result<bool> {
[INFO] [stdout]    |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/objects/git_objects.rs:37:64
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn put_object(&mut self, checksum: &Checksum, reader: &mut Read, force: bool) -> Result<bool> {
[INFO] [stdout]    |                                                                ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn put_object(&mut self, checksum: &Checksum, reader: &mut dyn Read, force: bool) -> Result<bool> {
[INFO] [stdout]    |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/repository.rs:15:27
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub fn new(index: Box<Index>, objects: Box<Objects>) -> Repository {
[INFO] [stdout]    |                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub fn new(index: Box<dyn Index>, objects: Box<Objects>) -> Repository {
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/repository.rs:15:48
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub fn new(index: Box<Index>, objects: Box<Objects>) -> Repository {
[INFO] [stdout]    |                                                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub fn new(index: Box<Index>, objects: Box<dyn Objects>) -> Repository {
[INFO] [stdout]    |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/index/file_index.rs:217:78
[INFO] [stdout]     |
[INFO] [stdout] 217 |     fn objects_from_index(&self, relative_path: &RelativePath) -> Result<Box<Objects>> {
[INFO] [stdout]     |                                                                              ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 217 |     fn objects_from_index(&self, relative_path: &RelativePath) -> Result<Box<dyn Objects>> {
[INFO] [stdout]     |                                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/index/git_index.rs:80:78
[INFO] [stdout]    |
[INFO] [stdout] 80 |     fn objects_from_index(&self, relative_path: &RelativePath) -> Result<Box<Objects>> {
[INFO] [stdout]    |                                                                              ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 80 |     fn objects_from_index(&self, relative_path: &RelativePath) -> Result<Box<dyn Objects>> {
[INFO] [stdout]    |                                                                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/resolver/resolvers.rs:9:35
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub fn new(resolvers: Vec<Box<Resolver>>) -> Resolvers {
[INFO] [stdout]   |                                   ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub fn new(resolvers: Vec<Box<dyn Resolver>>) -> Resolvers {
[INFO] [stdout]   |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/objects/mod.rs:77:17
[INFO] [stdout]    |
[INFO] [stdout] 77 | ) -> Result<Box<Objects>>
[INFO] [stdout]    |                 ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 77 | ) -> Result<Box<dyn Objects>>
[INFO] [stdout]    |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/objects/mod.rs:105:59
[INFO] [stdout]     |
[INFO] [stdout] 105 |     F: Fn(ObjectsConfig, &str, &Url) -> Result<Option<Box<Objects>>>,
[INFO] [stdout]     |                                                           ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 105 |     F: Fn(ObjectsConfig, &str, &Url) -> Result<Option<Box<dyn Objects>>>,
[INFO] [stdout]     |                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/objects/mod.rs:103:17
[INFO] [stdout]     |
[INFO] [stdout] 103 | ) -> Result<Box<Objects>>
[INFO] [stdout]     |                 ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 103 | ) -> Result<Box<dyn Objects>>
[INFO] [stdout]     |                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/objects/mod.rs:33:64
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn put_object(&mut self, checksum: &Checksum, source: &mut Read, force: bool) -> Result<bool>;
[INFO] [stdout]    |                                                                ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn put_object(&mut self, checksum: &Checksum, source: &mut dyn Read, force: bool) -> Result<bool>;
[INFO] [stdout]    |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/objects/mod.rs:49:52
[INFO] [stdout]    |
[INFO] [stdout] 49 |     fn put_object(&mut self, _: &Checksum, _: &mut Read, _: bool) -> Result<bool> {
[INFO] [stdout]    |                                                    ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 49 |     fn put_object(&mut self, _: &Checksum, _: &mut dyn Read, _: bool) -> Result<bool> {
[INFO] [stdout]    |                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/objects/cached_objects.rs:85:64
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn put_object(&mut self, checksum: &Checksum, source: &mut Read, force: bool) -> Result<bool> {
[INFO] [stdout]    |                                                                ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 85 |     fn put_object(&mut self, checksum: &Checksum, source: &mut dyn Read, force: bool) -> Result<bool> {
[INFO] [stdout]    |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/objects/file_objects.rs:33:64
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn put_object(&mut self, checksum: &Checksum, source: &mut Read, force: bool) -> Result<bool> {
[INFO] [stdout]    |                                                                ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn put_object(&mut self, checksum: &Checksum, source: &mut dyn Read, force: bool) -> Result<bool> {
[INFO] [stdout]    |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/objects/git_objects.rs:37:64
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn put_object(&mut self, checksum: &Checksum, reader: &mut Read, force: bool) -> Result<bool> {
[INFO] [stdout]    |                                                                ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 37 |     fn put_object(&mut self, checksum: &Checksum, reader: &mut dyn Read, force: bool) -> Result<bool> {
[INFO] [stdout]    |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/repository.rs:15:27
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub fn new(index: Box<Index>, objects: Box<Objects>) -> Repository {
[INFO] [stdout]    |                           ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub fn new(index: Box<dyn Index>, objects: Box<Objects>) -> Repository {
[INFO] [stdout]    |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/repository.rs:15:48
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub fn new(index: Box<Index>, objects: Box<Objects>) -> Repository {
[INFO] [stdout]    |                                                ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 15 |     pub fn new(index: Box<Index>, objects: Box<dyn Objects>) -> Repository {
[INFO] [stdout]    |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/resolver/resolvers.rs:9:35
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub fn new(resolvers: Vec<Box<Resolver>>) -> Resolvers {
[INFO] [stdout]   |                                   ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 9 |     pub fn new(resolvers: Vec<Box<dyn Resolver>>) -> Resolvers {
[INFO] [stdout]   |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/objects/mod.rs:114:87
[INFO] [stdout]     |
[INFO] [stdout] 114 |         "file" => objects_from_path(Path::new(url.path())).map(|o| Box::new(o) as Box<Objects>),
[INFO] [stdout]     |                                                                                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 114 |         "file" => objects_from_path(Path::new(url.path())).map(|o| Box::new(o) as Box<dyn Objects>),
[INFO] [stdout]     |                                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/objects/mod.rs:114:87
[INFO] [stdout]     |
[INFO] [stdout] 114 |         "file" => objects_from_path(Path::new(url.path())).map(|o| Box::new(o) as Box<Objects>),
[INFO] [stdout]     |                                                                                       ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 114 |         "file" => objects_from_path(Path::new(url.path())).map(|o| Box::new(o) as Box<dyn Objects>),
[INFO] [stdout]     |                                                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: public trait impl involving `Range` type
[INFO] [stdout]   --> src/checksum.rs:46:12
[INFO] [stdout]    |
[INFO] [stdout] 46 | impl Index<Range<usize>> for Checksum {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-D trait-impl-range`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: explicit usage of `Range` type in public function
[INFO] [stdout]   --> src/checksum.rs:50:28
[INFO] [stdout]    |
[INFO] [stdout] 50 |     fn index(&self, index: Range<usize>) -> &[u8] {
[INFO] [stdout]    |                            ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-D explicit-range`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 2 previous errors; 28 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `reproto-repository` (lib) due to 3 previous errors; 28 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: 28 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "5af37761529b4c5d409f2031ce88ec7e63cd3e34d06245a18f08f4de39365118", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5af37761529b4c5d409f2031ce88ec7e63cd3e34d06245a18f08f4de39365118", kill_on_drop: false }`
[INFO] [stdout] 5af37761529b4c5d409f2031ce88ec7e63cd3e34d06245a18f08f4de39365118
